//import com.mybatisflex.codegen.Generator;
//import com.mybatisflex.codegen.config.GlobalConfig;
//import com.zaxxer.hikari.HikariDataSource;
//
//import java.nio.file.Paths;
//
//public class 代码生成器 {
//    private static final String path = Paths.get(System.getProperty("user.dir"))+ "\\ecnu-admin\\src\\main\\";
//    //    @Test
//    public static void main(String[] args) {
//        //填写数据源
//        HikariDataSource dataSource = new HikariDataSource();
//        dataSource.setJdbcUrl("jdbc:mysql://127.0.0.1:3306/ecnu_server?characterEncoding=utf-8");
//        dataSource.setUsername("root");
//        dataSource.setPassword("123456789");
//
//        //创建配置内容，两种风格都可以。
//        GlobalConfig globalConfig = createGlobalConfigUseStyle1();
//
//        //通过 datasource 和 globalConfig 创建代码生成器
//        Generator generator = new Generator(dataSource, globalConfig);
//
//        //生成代码
//        generator.generate();
//    }
//
//    /**
//     * 设置主体
//     * @return
//     */
//    public static GlobalConfig createGlobalConfigUseStyle1() {
//        //创建配置内容
//        GlobalConfig globalConfig = new GlobalConfig();
//
//        //设置根包
//        globalConfig.setBasePackage("com.ecnu.server");
//        globalConfig.getPackageConfig().setSourceDir(path+ "java");//设置java文件路径
//
//        //设置表前缀和只生成哪些表
////        globalConfig.setTablePrefix("tb_");//过滤前缀有哪些
//        globalConfig.setGenerateTable("消息表");//****设置生成哪些表，不选择个就会全部生成
//
//        //设置生成 controller
//        globalConfig.setControllerGenerateEnable(true);//暂时不加，会有自己逻辑
//
//        //设置生成 entity 并启用 Lombok
//        globalConfig.setEntityGenerateEnable(true);
//        globalConfig.setEntityWithLombok(true);
////        globalConfig.getEntityConfig().setOverwriteEnable(true);//是否覆盖
//
//        //设置项目的JDK版本，项目的JDK为14及以上时建议设置该项，小于14则可以不设置
////        globalConfig.setEntityJdkVersion(17);
//
////        //设置生成 service
//        globalConfig.setServiceGenerateEnable(true);
//        globalConfig.setServiceImplGenerateEnable(true);
//
//        //设置生成 mapper
//        globalConfig.setMapperGenerateEnable(true);
//        globalConfig.setMapperAnnotation(true);
//        globalConfig.setMapperXmlGenerateEnable(true);
//        globalConfig.setMapperXmlPath(path+ "resources\\mapper");//设置mapper.xml文件路径
//
//        //生成辅助表
//        globalConfig.enableTableDef().setClassSuffix("Def");
//        //单独配置某表的某个列
////        ColumnConfig columnConfig = new ColumnConfig();
////        columnConfig.setColumnName("tenant_id");
////        columnConfig.setLarge(true);
////        columnConfig.setVersion(true);
////        globalConfig.setColumnConfig("tb_account", columnConfig);
//
//        return globalConfig;
//    }
//}
